package com.ljfresh.customer.pojo;

import com.alibaba.fastjson.annotation.JSONField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;
import java.util.List;

/**
 * @Author zzx
 */
@ApiModel("工单信息对象")
@AllArgsConstructor
@NoArgsConstructor
@Data
public class Ticket {
    @ApiModelProperty("标题")
    private String id;

    @ApiModelProperty("标题")
    private String field_num;

    @ApiModelProperty("标题")
    private String subject;

    @ApiModelProperty("内容")
    private String content;

    @ApiModelProperty("内容")
    private String content_type;

    @ApiModelProperty("查找客户时使用的类型")
    private String type;

    @ApiModelProperty("与类型type对应的值")
    private String type_content;

    @ApiModelProperty("优先级中文名称")//默认为标准
    private String priority;

    @ApiModelProperty("受理客服邮箱")
    private String assignee_email;

    @ApiModelProperty("受理客服组名称")
    private String agent_group_name;

    @ApiModelProperty("工单模板id")
    private Integer template_id;

    @ApiModelProperty("工单关注人")//如[1,2,3],数组内是客服id
    private String follower_ids;

    @ApiModelProperty("工单标签")//如"标签1,标签2",字符串内是标签名字,用逗号隔开
    private String tags;

    @ApiModelProperty("状态中文名称")//默认为开启
    private String status;

    @ApiModelProperty("状态英文名称")//默认为开启
    private String status_en ;

    @ApiModelProperty("自定义字段")//自定义字段，详见下文
    private TicketField ticket_field;

    @ApiModelProperty("工单创建人邮箱")
    private String creator_email;

    /**
     * 缺少一些其他参数
     */
    @ApiModelProperty("详情的自定义字段")
    private String custom_fields;

    @ApiModelProperty("附件")
    private List<Attachment> attachments;


    @ApiModelProperty("门店代码")
    private Long storeId;

    @ApiModelProperty("门店名称")
    private String storeName;

    @ApiModelProperty("待回复人邮箱")
    private String email;

    //保修类型 1. 2. 3.
    @ApiModelProperty("工单类型 0.百货退货异常 1.价格异常 2.质量异常 3.到货异常 ")
    private Integer orderType;

    @ApiModelProperty("到货时间")
    private Date arrivalTime;

    @ApiModelProperty("异常商品代码")
    private Long goodsId;

    @ApiModelProperty("商品名称")
    private String goodsName;

    @ApiModelProperty("结算单位")
    private String goodsUnit;

    @ApiModelProperty("结算单价")
    private Integer pricePerUnit;

    @ApiModelProperty("结算数量")
    private Integer goodsNum;

    @ApiModelProperty("实际到货数/退货数量/异常商品数量")
    private Integer realGoodsNum;

    @ApiModelProperty("创建人")
    private String creator;

    @ApiModelProperty("创建时间")
    private Date createTime;

    @ApiModelProperty("凭证")
    private List<String> voucher;

    @ApiModelProperty("凭证")
    private String user_cellphone;

}

